#include <func.h>

int main()
{
    char buff1[] = "hello";
    char buff2[] = "world";

    int fd = open("file2.txt", O_RDWR|O_CREAT, 0644);
    ERROR_CHECK(fd, -1, "open");

    //先定义一个多个缓冲区的iov数组
    struct iovec iov[2];
    iov[0].iov_base = buff1;
    iov[0].iov_len = strlen(buff1);
    iov[1].iov_base = buff2;
    iov[1].iov_len = strlen(buff2);

    //聚集写, 调用一次writev函数，就可以将两片缓冲区中的数据
    //写入文件中，不需要调用两次write函数
    int ret = writev(fd, iov, 2);
    printf("ret: %d\n", ret);

    close(fd);
    return 0;
}

